// import com.alibaba.druid.sql.visitor.SQLASTVisitor;
#pragma once
#include "SQLSubPartitionBy.h"
class SQLExpr;
class SQLASTVisitor;

class SQLSubPartitionByHash : public SQLSubPartitionBy
{
public:
  SQLExpr_ptr expr;

  // for aliyun ads
  BOOL_ptr key;

  SHAREDOBJECT(SQLSubPartitionByHash);
  SQLExpr_ptr getExpr();

  void setExpr(SQLExpr_ptr expr);

  // @Override
  void accept0(SQLASTVisitor_ptr visitor);

  BOOL_ptr isKey();

  void setKey(BOOL_ptr key);

  // SQLSubPartitionByHash* clone() ;
  virtual SQLObject_ptr clone();
  BOOL_ptr isPartitionByColumn(long columnNameHashCode64);
};
